package com.soup.lab.mybatis.dao;

import com.soup.lab.mybatis.model.Company;
import com.soup.lab.mybatis.model.CompanyCriteria;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface CompanyMapper {
    long countByExample(CompanyCriteria example);

    int deleteByExample(CompanyCriteria example);

    int deleteByPrimaryKey(Integer id);

    int insertBatch(@Param("records") List<Company> records);

    int insert(Company record);

    int insertSelectiveBatch(@Param("records") List<Company> records);

    int insertSelective(Company record);

    List<Company> selectByExampleWithRowbounds(CompanyCriteria example, RowBounds rowBounds);

    List<Company> selectByExample(CompanyCriteria example);

    Company selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") Company record, @Param("example") CompanyCriteria example);

    int updateByExample(@Param("record") Company record, @Param("example") CompanyCriteria example);

    int updateBatchByPrimaryKeySelective(@Param("records") List<Company> records);

    int updateByPrimaryKeySelective(Company record);

    int updateByPrimaryKey(Company record);
}